1. Statement of the Technical Field
The present invention relates to the field of rendering a portal user interface and more particularly to tracking portlet focus within a portal user interface.
2. Description of the Related Art
Distributing content about large computer communications networks is not without its challenges. In particular, the quantity of content available for distribution in a computer communications network often varies proportionally to the size of the computer communications network. At the extreme, the Internet hosts a vast quantity of content not easily accessible by most end-users. Portals represent a sensible solution to the problem of aggregating content through a channel paradigm in a single, network-addressable location. In consequence, portals have become the rage in content distribution.
Portlets are the visible active components included as part of portal pages. Similar to the graphical windows paradigm of windowing operating systems, each portlet in a portal occupies a portion of the portal page through which the portlet can display associated content from a portlet channel. Portlets are known to include both simple applications such as an electronic mail client, and also more complex applications such as forecasting output from a customer relationship management system. The prototypical portlet can be implemented as server-side scripts executed through a portal server.
From the end-user perspective, a portlet is a content channel or application to which the end-user can subscribe. By comparison, from the perspective of the content provider, a portlet is a means through which content can be distributed in a personalized manner to a subscribing end-user. Finally, from the point of view of the portal, a portlet merely is a component which can be rendered within the portal page. In any case, by providing one or more individually selectable and configurable portlets in a portal, portal providers can distribute content and applications through a unified interface in a personalized manner according to the preferences of the end-user.
Portal servers are computer programs which facilitate the distribution of portal based Web sites on the public Internet or a private intranet. Importantly, it will be recognized by one of ordinary skill in the art that the signature characteristic of all conventional portal servers can include the aggregation of content from several portlet applications within a single distributable page in a uniform manner. To that end, each portlet application within the portal page can be represented by a portlet user interface distributed by the portal server to requesting client computing devices.
For the interactive portlet applications, a two-way portlet user interface can be provided. In the two-way user interface of the portlet application, user input can be forwarded to the portal server through the use of a submit action in which the user input can be posted or otherwise provided to the portal server. Subsequently, the portal server can forward the user input to the appropriate portlet application in which the user input can be processed by the application portlet. In this way, the portal can be viewed as a logical extension to the Web application in which the Web application has been formalized in terms of user and application interface. Some have postulated that the portal merely represents the next generation of the Web application.
In the portal environment, multiple Web applications share the same Web page. When more than one of the Web applications within a Web page are interactive, it can be difficult to easily determine which application has the user focus. Within a single Web application, a mechanism already exists for tracking the focus of individual elements, either by surrounding a hyperlink with a selection box, or by placing a cursor within the input field. Yet, no mechanism exists for indicating which particular form within a Web application will be submitted if there are multiple forms declared within respective Web applications in a single portal page. Specifically, when client side scripts exclusive of the portal facilitate keyboard and mouse input within a portlet disposed in the portal, there is no way to determine which portlet has the current input focus.